<?php
// Pas d'accès direct à ce fichier, vérification de l'existence de la variable définie dans le fichier qui l'appelle
if (!isset($SECURITE)){exit();}

class tracking {

  var $id;
  var $date;
  var $user;
  var $objet;
  var $action;
  var $id_objet;
  var $commentaire;



  
  function tracking($id) {


    GLOBAL $CONF_bdd_prefixe;
    
    $sql = "
    SELECT * FROM ".$CONF_bdd_prefixe."tracking
    WHERE id=".$id."
    ";
    
    //echo $sql;
    
    $query=mysql_query($sql) or die(mysql_error());
    
    $ligne=mysql_fetch_array($query);
        
    $this->id = $ligne['id'];
    $this->date = $ligne['date'];
    $this->user = $ligne['user'];
    $this->objet = $ligne['objet'];
    $this->action= $ligne['action'];
    $this->id_objet = $ligne['id_objet'];
    $this->commentaire = $ligne['commentaire'];

    if ($id==0)
    {$this->date=time();}    
    //$this->date_texte = userdate($this->date)."&nbsp; (".format_time(time() - $this->date).")";

  }
  
  function update() {
    
    GLOBAL $CONF_bdd_prefixe;
    
    if ($this->id==0) // Nouvel enregistrement
    {
      $sql="INSERT into `".$CONF_bdd_prefixe."tracking` (id) VALUES ('')";
      $query=mysql_query($sql) or die(mysql_error());
      $this->id = mysql_insert_id();
    }
	
	//$this->date_texte = userdate($this->date)."&nbsp; (".format_time(time() - $this->date).")";
	
    $sql="UPDATE `".$CONF_bdd_prefixe."tracking` SET
    date='".$this->date."',
    user='".$this->user."',
    objet='".$this->objet."',
    action='".$this->action."',
    id_objet='".$this->id_objet."',
    commentaire='".$this->commentaire."'
    WHERE id='".$this->id."'";

    $query=mysql_query($sql) or die(mysql_error());
    //echo "erreur sql : ".mysql_error();
    //echo "<br />$sql<br />";
    return mysql_affected_rows(); 
  
  }
  
  function delete() {}
  
}

function liste_tracking($critere="") {
/*
entrée : Object critère
la clé contient le nom du champ du critère et la valeur la condition, exemple
$critere->user="='f.peslier'"  Va rechercher les manipulations de l'utilisateur f.peslier
$critere->objet="='Reinitialisation'"
$critere->id_objet="=244"
>>> Va rechercher les réinitialisations réalisées pour le cours 244
*/  
  GLOBAL $CONF_bdd_prefixe;

$where="1=1";
if (isset($critere->user))
{
 $where.=" AND user".$critere->user;
}
if (isset($critere->objet))
{
 $where.=" AND objet".$critere->objet;
}
if (isset($critere->id_objet))
{
 $where.=" AND id_objet".$critere->id_objet;
}
if (isset($critere->action))
{
 $where.=" AND action".$critere->action;
}
      
  $liste_correspondance_tracking = array();
    
  $sql = "
  SELECT id
  FROM ".$CONF_bdd_prefixe."changement_annee_tracking
  WHERE ".$where." ORDER BY date desc
  ";

    
  $query=mysql_query($sql) or die(mysql_error());
//echo mysql_error();
//echo $sql;
  $nb_resultat=mysql_num_rows($query);
 
  if(isset($nb_resultat) AND ($nb_resultat>0))
  {  
    while($ligne=mysql_fetch_array($query)){ 
      $liste_changement_annee_tracking[].=$ligne['id'];
    }
    
    return $liste_changement_annee_tracking;
  }
  else
  {
    return false;
  }
    
}

function liste_champ_changement_annee($variable)
{
  GLOBAL $CONF_bdd_prefixe;
  

  $sql = "
  SELECT distinct $variable
  FROM ".$CONF_bdd_prefixe."tracking
  ORDER BY $variable ASC
  ";

  
  $query=mysql_query($sql) or die(mysql_error());
    
  While ($ligne=mysql_fetch_array($query)){
    $liste[].=$ligne[$variable];
  }
  
  if(mysql_num_rows($query)>0)
  { 
    return $liste;
  }
  else
  {
    return false;
  }
}


?>
